Grasshopper Components
Directories
- Analysis
This directory structure organizes a suite of Grasshopper plugin components dedicated to structural analysis and finite element method (FEM) integration within Rhino. It features specialized modules for distinct engineering software, including SAP2000, Straus7, and its updated version, as well as a specific component for form-finding tensile structures. These files collectively enable users to automate complex structural simulations and equilibrium calculations by bridging visual programming workflows with external FEM solvers. The components are grouped under an "Analysis" subdirectory, indicating their shared purpose in computational structural design and verification.
- Attributes
This directory organizes a comprehensive suite of Grasshopper plugin components designed to facilitate structural analysis workflows within the FeMM (Finite Element Method for Mechanical) framework. The main components are categorized by their target structural elements—primarily beams, nodes, and plates—and focus on assigning specific physical attributes, such as supports, releases, stiffness, and load conditions. Each file represents a specialized tool that modifies these elements to prepare them for export to structural analysis software like SAP2000 or ETABS. Consequently, the files relate hierarchically through shared functional themes, where individual components handle distinct aspects of model definition, from geometric constraints to complex force density applications.
- Checks
This directory structure organizes a suite of Grasshopper plugin components dedicated to structural engineering analysis and design verification. The main components handle specific tasks such as applying forces to beams, performing shear and tension checks on composite sections, and generating reinforcement layouts for reinforced concrete frames and pillars. These files relate to one another by forming a cohesive workflow that integrates structural analysis results with geometric data to automate code compliance checks and detailing processes.
- Definitions
This directory serves as the core definition module for the FeMM (Finite Element Method Manager) Grasshopper plugin, providing specialized components for structural analysis workflows in SAP2000 and ETABS. It organizes files by function, grouping logical elements such as load cases, combinations, constraints, and geometric definitions like stories and coordinate systems. Each component acts as a discrete data processor that accepts specific inputs to generate structured parameters required for finite element modeling. Collectively, these files enable users to programmatically define complex structural scenarios, from basic beam releases to advanced staged construction analyses, within a unified computational environment.
- Design
This directory organizes a Grasshopper plugin suite dedicated to managing structural steel design preferences and beam overrides for various international building codes, including AISC 360, AS 4100, and Eurocode 3. The architecture relies on a clear inheritance hierarchy where abstract base classes like `BeamDesignOverrideComponent` and `SteelPrefsComponent` define core functionalities and templates. Concrete implementations in the `Design` folder extend these bases to provide specialized interfaces for specific standards, ensuring modular and standardized configuration options for SAP2000 integration. This structure allows users to easily switch between different code requirements while maintaining consistent component behavior within the FeMM plugin ecosystem.
- ElementProperties
This directory serves as a specialized library for Grasshopper components that automate the generation of structural property definitions for various finite element analysis software, including SAP2000, ETABS, and Straus7. The main components are organized by structural element type, featuring distinct modules for beams, links, plates, and spring-damper systems. Each file implements a specific component that translates user inputs into precise property data or naming conventions required by these engineering platforms. This structure allows users to seamlessly integrate geometric and material properties directly into their structural modeling workflows.
- Elements
This directory structure organizes a suite of Grasshopper components designed to generate and manipulate structural elements within the FeMM finite element modeling framework. The main components include specialized classes for creating nodes, beams, links, and plates, each inheriting from or extending base classes like `BeamComponentBase` to ensure consistent integration with Rhino. Files are logically grouped by function, distinguishing between primary element generators and their respective "Override" counterparts that allow for property modification after creation. This hierarchical organization supports a modular workflow where users can define initial geometry and subsequently refine specific parameters for accurate structural analysis.
- Export
This directory structure organizes a suite of Grasshopper plugin components dedicated to exporting Finite Element Method (FEM) models to various structural analysis and BIM software environments. The main components, including exporters for Revit, ETABS, SAP2000, and Straus7, function as specialized tools that translate geometric and property data into format-specific files like .sdb or BIM standards. These files relate to one another by sharing a common purpose of bridging design and analysis workflows, though some, such as the StrausExportComponent, remain inactive or commented out in the current implementation.
- F2R
This directory structure comprises a C# plugin suite for Grasshopper that facilitates bidirectional data exchange between Rhino geometry and major structural analysis software, primarily ETABS and SAP2000, with secondary support for Straus7. The main components are organized by function into utility classes for model management, interactive tools for real-time synchronization of joints, frames, and areas, and batch processing scripts for importing, exporting, and modifying specific database tables or element properties. Files relate through a consistent naming convention that distinguishes between "Bake" operations for finalizing models, "Interactive" triggers for live updates, and specific data manipulation tasks like selecting elements or changing labels, all working together to streamline the workflow between architectural modeling and structural engineering analysis.
- Functions
This directory structure organizes a suite of Grasshopper plugin components specifically designed to automate and configure structural analysis load cases for SAP software. The main components include `MassSourceComponent` for defining mass sources, along with specialized tools like `ModalEigenComponent`, `ModalRitzComponent`, and `ModalRitzLoadComponent` for handling various modal analysis scenarios. Additionally, the `ResponseSpectrumComponent` facilitates the management of response spectrum definitions within the FeMM framework. These files are grouped under a shared "Functions" subdirectory, indicating they serve as interconnected functional modules that allow users to programmatically generate complex structural simulation parameters through a visual scripting interface.
- Loads
This directory organizes a suite of Grasshopper plugin components designed to apply various structural loads and boundary conditions within the FeMM (Finite Element Method for Modeling) framework. The main components are categorized by their target elements—such as beams, nodes, and plates—and by load type, including distributed forces, moments, mass properties, temperature effects, and pre-stress conditions. Files relate hierarchically by grouping specific loading functionalities under a shared "Loads" folder, ensuring modular access to distinct simulation parameters like point loads, uniform pressures, and non-structural masses. This structure facilitates a comprehensive workflow for defining complex mechanical interactions across different finite element geometries.
- Materials
This directory organizes Grasshopper plugin components specifically designed to generate material definitions for the FeMM finite element analysis framework. It contains distinct C# scripts for standard materials like aluminium, concrete, and steel, alongside specialized components for custom inputs and tabular data handling. Each component functions as an independent module that accepts specific user parameters to construct valid material models. Together, these files provide a comprehensive toolkit for defining diverse material properties within the simulation environment.
- MeCheck
This directory organizes a specialized Grasshopper plugin suite for advanced structural analysis and steel design, specifically tailored for Eurocode 3 (EC3) compliance. The main components focus on defining complex structural elements, such as mixed-section beams and composite concrete-steel sections, while simultaneously providing automated security checks and parameter configurations for these "super-elements." Files like `AutoTensionComponent` and `EC3SteelPrefsComponent` handle specific engineering preferences, whereas components like `MixedSectionBeamCheckComponent` interface with external APIs to validate structural integrity. Overall, the structure supports a workflow that combines geometric definition with rigorous code-compliant verification for complex structural systems.
- MeCheck2
This directory organizes a suite of Grasshopper components for the FeMM structural analysis framework, specifically focusing on the design and verification of composite steel-concrete beams. The main components handle geometric property extraction, material behavior modeling (such as creep and shrinkage), and complex structural checks like shear resistance according to Eurocode standards. Files are structured hierarchically with abstract base classes defining visualization and filtering logic, which are then inherited by specific functional versions, including some marked obsolete. This setup allows users to input Finite Element Method models and systematically process them through various stages of analysis and result visualization.
- Models
This directory structure organizes Grasshopper plugin components that facilitate the construction and manipulation of Finite Element Method (FEM) models within the FeMM framework. The primary components include `BuildModelComponent` for assembling final models, `DecomposeModelComponent` for splitting models into elements, and `MergeModelComponent` for consolidating various structural parts. These files work together to provide a comprehensive workflow for managing FEM model data, allowing users to either create complex structures from smaller pieces or break down existing models for analysis. The presence of the `MeCheck2` subdirectory suggests additional utility or validation tools may be included in this specific module.
- Parameters
This directory structure organizes custom parameter classes for the FeMM structural analysis plugin within the Grasshopper environment, specifically designed to handle specialized data types like beams, plates, materials, and load combinations. Each file defines a unique C# class that inherits from `GH_PersistentParam` or similar base classes to manage specific FEM-related entities, such as `BeamSection`, `CoordinateSystem`, or `StressAnalysisResult`. These components serve as the foundational data connectors, enabling seamless interaction between user inputs in Grasshopper and the underlying finite element analysis engine by providing structured storage and retrieval mechanisms for complex structural parameters.
- Patterning
This directory structure outlines a specialized Grasshopper plugin framework, likely part of the FeMM system, dedicated to computational patterning and tensile fabric design. It comprises modular C# components that facilitate complex geometric operations, including 3D mesh flattening, cable net generation, and geodesic path calculations. The files relate as a cohesive toolkit where intermediate outputs, such as boundary edges or flattened patterns, serve as inputs for subsequent processes like decompensation or panel division. Collectively, these components support a workflow from structural analysis and pattern generation to fabrication-ready 2D layouts.
- Results
This directory structure organizes a suite of Grasshopper plugin components dedicated to extracting and visualizing structural analysis results from finite element models. The main components include specialized classes for processing beam data, steel design outcomes, node-specific FEM outputs, plate results, and overall displacement modeling. Each file corresponds to a distinct geometric or analytical entity, allowing users to query specific structural behaviors such as displacements or stress states. These components collectively enable a comprehensive workflow where raw simulation data is translated into readable, visual feedback within the Grasshopper environment.
- SAPExtra
This directory constitutes a specialized Grasshopper plugin for the FeMM ecosystem, designed to automate and streamline the structural analysis workflow with SAP2000. It comprises modular C# components that facilitate bidirectional data exchange, allowing users to import Rhino geometry into SAP2000, apply loads, and retrieve detailed results such as forces, displacements, and design combinations. These files function as interconnected utilities that bridge visual programming inputs with the SAP2000 API, enabling automated load case management, result filtering, and steel design automation within a parametric environment.
- ST2R
This directory contains a suite of C# components for the Grasshopper plugin that bridges Rhino/Grasshopper with the Straus7 structural analysis API. The main components facilitate the complete workflow of managing structural models, including opening, saving, and closing models, as well extracting detailed connectivity data for beams, nodes, plates, and links. Additionally, the files provide tools for reading specific result metrics like beam forces, displacements, and stress values, while also allowing users to manage model entities through selection and coordinate modification. Together, these files create a comprehensive interface for bidirectional data exchange between the parametric design environment and the finite element analysis software.
- Sections
This directory comprises a suite of Grasshopper components designed to facilitate structural beam section modeling and analysis within the FeMM framework, primarily targeting Revit integration. The main components include specialized generators for various cross-section geometries—such as I-beams, channels, hollow profiles, and custom shapes—as well as utility tools for extracting geometric properties and translating standard steel nomenclature into detailed data. These files relate through a shared functional purpose: they either create specific structural definitions or process existing sections to output necessary parameters for finite element analysis. This structure supports a workflow where users can define complex beam geometries and seamlessly transfer that data between design and analysis environments.
- Tools
This directory structure houses a collection of Grasshopper plugin components designed for structural analysis and finite element modeling (FEM) workflows. The main components focus on three primary functions: filtering structural elements like beams, plates, and nodes based on specific criteria; manipulating geometry by aligning coordinate axes or converting curves to meshes; and processing mesh data through cleaning, subdivision, or generation tools. Files are organized within a `Tools` subdirectory, indicating they serve as utility modules that likely interact with each other to preprocess input data or prepare geometries for simulation engines like Straus7.